/**
 * 
 */
package fr.kptn.musixmatchwrapper.dto;

/**
 * Root interface of all types of responses.
 * 
 * This interface determines two methods to get the header part and the data
 * part of the response. This is used to abstract the navigation between objects
 * in the different responses.
 * 
 * @author Sylvain
 * 
 */
public interface IResponse {

	/**
	 * Get the header part of the response
	 * 
	 * @return a <code>ResponseHeader</code> object representing the header part
	 *         of the response
	 */
	public ResponseHeader getHeader();

	/**
	 * Get the data part of the response
	 * 
	 * @return an object representing the data part of the response. This object
	 *         could be, for an example, a track, an album, a list of tracks,
	 *         ...
	 */
	public Object getData();
}
